设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11934|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 Z5 H6 i/ [! d& F( K
4 q+ T4 C: H5 ~: `( G/ _
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" P4 w' Z" X) t8 f' o( r1 K+ D5 c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# l, X8 F& L. A7 @- n7 T) Z' B
swarm.SignatureNotFoundException+ W/ b$ R# O7 Z5 d  x  y- m
        at swarm.Selector.<init>(Selector.java:76)
1 l$ A" T  L" K  P6 k' W        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ A7 P- {, Y. u$ `3 D7 c
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; a( S. o. m, E- y8 [) R+ u8 O% \. C% d* P* y  ^
/ h7 R+ s6 o* X9 e( h5 L$ o* d& A
import swarm.objectbase.SwarmImpl;% k+ Z/ l$ `# ?( L- l5 C1 d
import swarm.objectbase.Swarm;
6 f8 Y( e; d0 m: J/ y# R- x0 qimport swarm.activity.ScheduleImpl;
: e  d* v+ X" T, p5 Nimport swarm.activity.Activity;
' N+ v8 C# M- b2 I# P. U/ e& F/ Vimport swarm.activity.ActionGroupImpl;: T# g2 K3 P/ ]6 D; q. N
import swarm.collections.ListImpl;. T1 T* a! b7 C6 Y7 {
import swarm.defobj.Zone; ; H* ~* O4 A3 D  W( c$ I
import swarm.Globals;/ m3 g) C! X* a, A7 u: v) E  m
import swarm.Selector;- W) c4 }% _7 f6 n1 L- `
import swarm.activity.ActionGroup; ; n4 @% x+ V! J
class Agent {
" g2 Y% T, i2 l0 h, ?# s: E( t        char id;
+ [" o" `/ y/ X$ n8 g6 X% Q: c
/ y% m2 f5 b6 n9 r. d        Agent(char id) {
- V$ K4 B$ o4 a# y0 U8 t                this.id = id;
( k5 i, @# f) o( y        }% }6 V( Q9 \8 W# j
: w8 k, A1 g/ d) K
        public void agentStep() {
6 @/ G, l4 K5 R: E2 u                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 c& [6 V5 Q  w' j! m! {% [" s        }
; R: y, {' O4 `  p5 f2 d}. o$ T3 d0 z& g* U1 t! q

: h6 O. H( {+ J3 [- k1 v) E" Qpublic class ActionGroupDemo extends SwarmImpl {! `" Z( z- `: }8 C. Z& Y
        ScheduleImpl schedule;0 c0 p; ]$ V8 P
        ActionGroupImpl actionGroup;
1 b& l* g1 E1 r; f        ListImpl list;
3 V: U0 O3 g! o* f9 g" i  B        char Id = 'a';* G  h5 t8 H. m. [. p. N

& I' b* R) h; T  w% T! H        ActionGroupDemo(Zone aZone) {, m$ j" Q8 h, K; E' v
                super(aZone);3 J* R5 O3 r& Y" z+ t
                list = new ListImpl(aZone);! a( t9 @" q! D: G( e% J
                swarmSetp();7 J$ I4 F$ K" N0 Q% L
                actionGroup = new ActionGroupImpl(aZone);1 r, P7 m& Q% m$ S" L/ m
                schedule = new ScheduleImpl(aZone);% `3 l) `" t  w7 K
                try {* U& W' z" E( \
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& I! u# q7 q7 q6 |/ e% f* z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, X) C! i+ J" |! t
                        1 q+ S, p7 E/ c+ e& O" b# E
                        actionGroup.createActionForEach$message(list, agentSel);2 U0 {0 {) t# N1 J" Y
                        actionGroup.createActionTo$message(this, swarmSel);
. m1 V' p, r  u& |. R$ Z3 N                        schedule.at$createAction(0, actionGroup);
' u; s+ k  ~* H) w1 @                        schedule.at$createAction(1, actionGroup);
6 p. Z3 N# I& z' g8 s; r) V' D                        schedule.at$createAction(2, actionGroup);
; Z. h) {# p' K; R7 W; S2 s2 \8 i( ^+ H  e) f# O0 j
                } catch (Exception e) {* o/ G* t7 w5 R) S0 Y
                        e.printStackTrace(System.err);( I% X1 U) k0 j# x3 b
                        //System.out.println(e);% S* _" a) P+ @' p4 i( v! Y' f
                        System.exit(1);
5 N3 B& k5 @  O8 `                }
' j. b' Z5 E; n' `3 `5 ]" M* V% G8 ~1 l5 G& Y; C: u3 Y* d9 I; v& i, m

' i, y  l6 c- B, U/ |, d1 W        }
- f7 i2 v$ b0 s2 m# M* ?* S  O7 [4 E5 z) |1 C- b6 Y
        private void swarmSetp() {5 e2 {+ |8 ~' n9 o0 k; G$ R/ k3 N
                list.addLast(new Agent(Id));
* N0 }' F: t+ L- k- v                Id++;
1 y9 d+ a' k4 x0 t        }" K9 W8 r2 X, D7 H+ Z

4 f% N3 b2 t, o/ S( [; H        public Activity activateIn(Swarm context) {
, h7 P3 v% Q+ B2 X" y% p1 n/ h                super.activateIn(context);8 x" a* q$ J& S8 p( d5 K
                schedule.activateIn(this);
2 X6 f: X; l" ^- n                return getActivity();
( O! w" H* U5 e        }# C7 a# w' _0 [) }; U

# W  e! s7 `7 Q5 Z' @; D. {3 ?2 [& x        public static void main(String[] args) {
6 D8 _; g! t! @                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( u) E: w* q( U/ B
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! @, m6 \  e. n* v( v# t
                swarms.buildObjects();  s! H' w9 K) L# k' @. r
                swarms.buildActions();
1 J' [8 I$ I! u; q# Q# k, O. O                swarms.activateIn(null).run();
( [) V  L5 u' e7 q9 D        }
$ Q. H9 ]' ~. w8 W' Q, F" T3 u4 y% @# q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-26 01:25 , Processed in 0.021824 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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