设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11491|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! m0 a& l( o" T" D7 Q& ^

1 s, L) x) y, [9 ]( p! X$ j. g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ W: p# S& Z8 i8 a  I. I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' M6 c1 w) H  Y* M$ Mswarm.SignatureNotFoundException- `2 M/ f5 _, Y
        at swarm.Selector.<init>(Selector.java:76)+ X+ G7 E$ B0 `5 V' r2 j2 y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: C4 n5 s5 ]+ d6 N# F, |        at ActionGroupDemo.main(ActionGroupDemo.java:67)* O/ r- ~- _/ e9 C7 a

+ _3 m& z) v% n
) m" K2 @& _0 V  p. k& O( B! Pimport swarm.objectbase.SwarmImpl;3 k2 o: o. p- ]+ n1 X, `) Z
import swarm.objectbase.Swarm;' x/ `$ o2 \1 v9 ?
import swarm.activity.ScheduleImpl;. E$ k. O% G7 r+ ?! C2 Y2 p
import swarm.activity.Activity;
  p  D- v. f3 J$ B2 u% d! q) \import swarm.activity.ActionGroupImpl;
/ G" `5 q0 k) P, F( y# nimport swarm.collections.ListImpl;" i! M1 g, p4 S% k* u+ p
import swarm.defobj.Zone; 8 r5 J# F8 Y7 v9 a% w; X( h
import swarm.Globals;& y% \' L" A2 e3 \% X9 r4 ?
import swarm.Selector;) p( h& f/ t; q1 ?
import swarm.activity.ActionGroup; 8 m; m+ T5 V5 C  |! D
class Agent {3 T0 _0 F0 ], l  g3 D& E5 P4 n
        char id;  u9 L( S" b& X
/ T! s1 c5 Q/ v2 f3 d
        Agent(char id) {; n9 I: c1 m1 X  b
                this.id = id;7 x- u* N& }0 o. ~$ k2 I7 h
        }
  E2 b+ H5 F. `  S7 ^/ `& u6 _4 C  M4 y/ k
        public void agentStep() {& ^, u4 W4 e3 X* s6 V% j$ e) J
                System.out.println(id + ":" + Globals.env.getCurrentTime());3 S& Z; X, h" a& K
        }
( t: n8 g. J' X) ~5 w. Z}% Y" f: ]9 p- _0 E
. h; k. t5 n& i0 X/ L9 i7 n' j
public class ActionGroupDemo extends SwarmImpl {9 u$ N2 D& [8 X) Y# G/ E
        ScheduleImpl schedule;
+ }- A" P3 j- P: A        ActionGroupImpl actionGroup;
2 f) t) Q* v1 ?- }        ListImpl list;
5 u. }! {* k6 t; ~8 c+ X5 P        char Id = 'a';3 Q+ R  P3 t2 b5 ]7 M% G7 {

! q/ a8 w# [5 M7 ?7 S5 b        ActionGroupDemo(Zone aZone) {
* ?; E  N3 b8 B+ m- w+ M6 B( \                super(aZone);8 }1 A) e; a, i% H4 G4 B5 J
                list = new ListImpl(aZone);' D# z5 R  c: G4 j
                swarmSetp();% t+ @+ }. W" w/ i
                actionGroup = new ActionGroupImpl(aZone);9 q; o* L& E2 p- Z9 k" {- m7 R, b
                schedule = new ScheduleImpl(aZone);* [- U2 P# \! N8 e: G/ a
                try {: c, x6 ]5 e, x; W; r* E2 R9 u" ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
. k4 S8 E' M1 e( h7 d                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  }# S" r& C6 S3 K+ @4 v5 k. \+ d6 G                        
$ y( L" a% Z5 X- J2 [  ]- d                        actionGroup.createActionForEach$message(list, agentSel);
5 X% m5 H$ I6 K6 N8 i/ m                        actionGroup.createActionTo$message(this, swarmSel);- J: j# p5 E" c- S' C0 s
                        schedule.at$createAction(0, actionGroup);! F4 C& u4 i9 c
                        schedule.at$createAction(1, actionGroup);. h8 z) b1 c1 }+ B. A3 W
                        schedule.at$createAction(2, actionGroup);$ u9 c1 ]0 O" U! S2 ^
( P0 F$ x) F2 ~7 w4 @
                } catch (Exception e) {1 V" U' W$ I9 n( D
                        e.printStackTrace(System.err);
  l" @! o7 Z5 x" T6 n# |                        //System.out.println(e);
3 M# I5 z# J3 E& F9 c! G                        System.exit(1);
  ]3 c) [5 r' K1 E                }
9 A' \9 N% \# v" f
. x9 K: C$ M/ O' C
4 a+ X' `- l" n% J, k( i7 |        }+ d3 \$ b. v9 F- A2 S8 Y% p4 g
# z' o' l, t; U" k" R
        private void swarmSetp() {
: n1 t3 U7 \$ j7 H) [                list.addLast(new Agent(Id));" y& h- j; f6 w8 a3 u
                Id++;
5 T! V" f9 e  N) r8 x, L- q3 u! J        }
5 h1 m3 |1 ^. w: q! |: W& ?" z% Q% F9 A3 a% Z) [
        public Activity activateIn(Swarm context) {
" {# u8 p$ H9 R                super.activateIn(context);& Q' `3 E, f% p1 O4 a5 Q% E( m+ u2 r. o
                schedule.activateIn(this);3 ]1 B0 w/ D& E2 [' u- V8 m
                return getActivity();# p! H. z) m. r1 N/ _
        }  F+ Y. K( A. X" j; P& M+ E

% U  @! f! v5 e# G        public static void main(String[] args) {
* S5 D( J  _2 }( d- Z. F5 g: [. O                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( a3 r5 C( R" Z0 N  B3 M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ w$ _5 I9 H3 [, R
                swarms.buildObjects();
! P' Q  ?5 m2 W6 @+ ^' }                swarms.buildActions();
* `& {; e" `! B% N- `                swarms.activateIn(null).run();' Y5 d6 K: S# i6 G
        }) {6 U% u+ S0 J5 i* |4 n8 E1 |$ w
7 C9 }) }- N" {+ b
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-7-13 22:33 , Processed in 0.018362 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表