设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9424|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 , p3 ~$ y4 x, W* {( g5 E$ [

9 m, p7 M3 p3 z# |, M# i  g  r, B' n本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
* f' `' o7 s5 w. `. R& F- _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" r3 c" }- h$ Dswarm.SignatureNotFoundException
$ x. c' s8 b$ V0 \. [2 H        at swarm.Selector.<init>(Selector.java:76)
  ~- f3 W- G' R8 ^        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ N5 P8 Q$ a9 m; v& W        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 Y/ R9 ^. r' \) T+ P5 t. C9 v1 d6 A6 \: u( P. z  Z5 ?- G3 ^3 E

/ T% A6 a" ^7 y4 z9 H9 }: n# n, Gimport swarm.objectbase.SwarmImpl;' T5 F1 X) S! p1 v
import swarm.objectbase.Swarm;
$ D# C* z3 I1 j5 M$ l1 N3 s7 uimport swarm.activity.ScheduleImpl;: C" i/ m" ?$ A9 V+ r
import swarm.activity.Activity;
1 N1 d4 x" e9 ~- }; h; zimport swarm.activity.ActionGroupImpl;3 w" P6 L; H. P8 c3 Q6 {+ I2 l
import swarm.collections.ListImpl;6 J5 S# z) y8 t# i4 E& q9 p' q
import swarm.defobj.Zone; & j  q: N0 v. ?: E+ T$ d
import swarm.Globals;* z; a+ k7 F% v& P5 ]
import swarm.Selector;1 c+ y) L- M  |- C
import swarm.activity.ActionGroup;
+ S9 \5 h- u; Q0 `5 ~class Agent {" U$ D4 Q- h: o; M
        char id;( H7 y' i2 \. p5 H4 L' v; {# ^- l
) c& d6 `$ {" |+ W+ o8 g
        Agent(char id) {: M: b7 @5 }3 p8 Q3 z. B7 {
                this.id = id;2 z# V% W  ~5 q! ?1 D7 i
        }" v1 i2 k7 r" U# g2 W) m! v
, p9 t1 e6 N9 h/ l
        public void agentStep() {
4 ]7 p- U' d7 z# K* r                System.out.println(id + ":" + Globals.env.getCurrentTime());
, ?6 i( C/ m( [        }. ^- q* z! v- [
}
4 R. f5 l0 d1 M# [
7 z5 o/ R6 L( y- D- d" |2 k+ R+ [5 Gpublic class ActionGroupDemo extends SwarmImpl {
0 o( Q2 }) q8 V0 d% E  a/ R        ScheduleImpl schedule;$ e! k7 I# o4 G9 U
        ActionGroupImpl actionGroup;3 t; G# [! k  D9 |- J; q2 F* l
        ListImpl list;0 |0 ^* [4 b: F" ]* u" i
        char Id = 'a';
- ^4 U* P( O9 r+ m. T" u% n, J9 G% _4 a* ]* p
        ActionGroupDemo(Zone aZone) {
% \# l2 s$ {1 S0 P7 y                super(aZone);/ O; s; H5 |; C% t' d! Q
                list = new ListImpl(aZone);3 C* P( j3 ^+ \/ Q
                swarmSetp();
" d7 L* U, S& B  d% e6 C                actionGroup = new ActionGroupImpl(aZone);
+ h, x0 m0 x& N' c" F/ X+ `& ^& k                schedule = new ScheduleImpl(aZone);7 c0 D9 q3 U; u0 [
                try {2 S2 h! M: y3 j% I- W
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);& u7 Y& v: r) |
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 C# e: r6 \8 z/ j
                        ( F( @) Q8 G" E6 y% D* @
                        actionGroup.createActionForEach$message(list, agentSel);2 k( ]: t& [! X  T* `# d
                        actionGroup.createActionTo$message(this, swarmSel);/ @, d3 X+ u; k3 R  K
                        schedule.at$createAction(0, actionGroup);
6 r  Q2 g& T- Y& h9 E% \8 o/ m                        schedule.at$createAction(1, actionGroup);! S' s3 g/ u* `! F' Q" O7 W
                        schedule.at$createAction(2, actionGroup);
9 B. [0 p* m+ E* d0 `& a/ j7 A& s
                } catch (Exception e) {
( Z0 X' [( x3 O% T                        e.printStackTrace(System.err);$ M, t, {' a9 n3 V
                        //System.out.println(e);+ n; z! t; c# z0 N& m
                        System.exit(1);
4 X/ a8 g2 `. _8 [0 X                }* F% a) G0 o  E. H9 b
/ G8 R4 ^2 D) ]% `+ r! h

3 x5 \5 x7 `0 g% x6 f: U( r        }/ d8 r& C4 Y% F0 U. {, ]! o1 \* l
% q3 k0 [5 _% Z8 T2 h3 q6 A7 }
        private void swarmSetp() {
8 @3 L# P! E2 Z% K  i/ g% U1 n                list.addLast(new Agent(Id));
4 f* p$ K) X; w( g/ s, W  d                Id++;* N! h0 G) ^6 Y$ G
        }' W' C1 T0 O8 q& O6 a) d" N9 K# o

  M5 D+ K# U7 O) m        public Activity activateIn(Swarm context) {# q5 @$ Y# V6 o. v6 u
                super.activateIn(context);
/ R% m5 R$ _) L. F. i9 v- L3 k                schedule.activateIn(this);( @8 `" d; J% b: x+ w! s' L  g
                return getActivity();
' y/ {' s" ^! _4 f- S5 d3 m; _        }9 u, R" t- K4 o$ n- N# K' v. e9 [

! K! h0 G+ X1 _7 ^; _5 i; M6 a% [% X        public static void main(String[] args) {
, B2 b" B+ J5 ~. s0 ^' b2 s! Q# i                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 {* B8 F* r7 }. u! U  X% y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ o: `8 Y' C# i; V
                swarms.buildObjects();
4 p7 ~. v! j: q! L. h, F. o9 I" L                swarms.buildActions();
  [# K7 F8 i, F& D3 h4 V+ a! v6 J. G* L                swarms.activateIn(null).run();
% w, n% f: n4 A8 D1 z8 i3 b        }
% u3 T5 T; m& @- m. e# P; H5 w- v/ @/ W
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-11 23:13 , Processed in 0.016231 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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