设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9163|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 [6 w9 `0 u; n+ z5 t8 C- k4 Q- t7 K# e9 I" [3 I/ V# u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update215 B* U. V1 `4 e/ U8 ^) G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ k+ a$ R4 m, K# o; S: p
swarm.SignatureNotFoundException( B. Q( a/ g& K* Q4 c
        at swarm.Selector.<init>(Selector.java:76)
- M+ \; \9 k2 a( \: K2 o$ w        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): k3 G- `5 G2 ?3 z4 O1 Y/ j, |
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 [. W$ ]8 F% k8 A- z5 b
5 p. `# O1 S4 {" d$ J
  B. r; A" M1 Z2 m1 h, y/ b* qimport swarm.objectbase.SwarmImpl;
5 X8 r5 M$ R. f" Wimport swarm.objectbase.Swarm;: c# a& t$ ^/ q+ i& e
import swarm.activity.ScheduleImpl;
1 x, F+ {' |9 P1 W( uimport swarm.activity.Activity;
: y3 R+ X. L: j6 o' ~* C6 Iimport swarm.activity.ActionGroupImpl;4 g5 v$ E3 s/ N
import swarm.collections.ListImpl;  }6 E' W, m" |( I
import swarm.defobj.Zone;
' o/ g, s' Z( q& qimport swarm.Globals;
8 S2 f1 W. G' O0 ^; ^5 j9 uimport swarm.Selector;% t: h& s; @2 o: Z9 D
import swarm.activity.ActionGroup;
( U( P0 X* `: i& Z: Fclass Agent {, A0 @& |" [8 [  J* Z
        char id;
: D4 v% q' U/ ^
( S. x. E0 Y% s# ^        Agent(char id) {3 `( U6 B7 c7 a1 z: M" L3 `
                this.id = id;
9 R7 u' H: {0 |        }
2 `5 k" Z: e  W: l& I7 B: d  [3 A3 @. `. Z
        public void agentStep() {
  ?* q# q/ f/ I! p                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 ]. M1 z( ~, F8 {6 O        }$ W) S! P# n$ N9 H
}
9 C8 e5 K/ M  ]+ s  A  W, P% r7 y$ ~8 C! y; C8 r% x6 f
public class ActionGroupDemo extends SwarmImpl {
# w% h3 O0 ~3 X7 u        ScheduleImpl schedule;
/ X5 {- H$ ?( x' K' q9 _# u        ActionGroupImpl actionGroup;
! x% n* K; f' X- ~3 ^        ListImpl list;2 Q# F9 K; E9 a; O
        char Id = 'a';
- G3 U8 r) S2 X8 @) K/ a5 [8 e, l6 x: E7 l0 C, v4 C, x
        ActionGroupDemo(Zone aZone) {+ L4 f* A. t( k9 x( x$ e$ W. z1 ?% s
                super(aZone);
9 @! y4 i1 N% u! v5 _- R2 L" a+ E                list = new ListImpl(aZone);2 S9 J2 Z; A% a3 c
                swarmSetp();; V0 O% y: G) A/ @. F6 ?
                actionGroup = new ActionGroupImpl(aZone);; \' [3 w; z* C- o
                schedule = new ScheduleImpl(aZone);: P- M- `! q& ^# g: v# n! U
                try {# S9 M2 ]( {" ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 q5 x: K9 Z% f( u2 P/ ^
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行2 c1 W7 w: x4 h  b, y
                        
$ e/ o  W0 a7 y# j1 k                        actionGroup.createActionForEach$message(list, agentSel);; }6 {" H) }8 ^+ s
                        actionGroup.createActionTo$message(this, swarmSel);" k& O6 U0 ?4 f+ @9 }  l
                        schedule.at$createAction(0, actionGroup);6 {; S$ `( D( L3 e7 f
                        schedule.at$createAction(1, actionGroup);& i3 w7 b  k* O$ t
                        schedule.at$createAction(2, actionGroup);) x7 H0 D4 T; D9 r
& G' _  D4 B& P2 _3 R6 Y7 c' E
                } catch (Exception e) {
% _/ r& d/ M8 o, Z                        e.printStackTrace(System.err);
2 R- g* [5 E$ g                        //System.out.println(e);6 R3 O, A" ?8 U& W7 S- V+ O) Z, d
                        System.exit(1);
, X- e8 r# E3 y% M* r4 @                }1 O6 |5 b) A& \7 w! n
- }# p" z$ E/ |

+ v1 \" k2 R1 o4 W% w        }
% Z* s" Y! B  D( k9 F# z/ U
: F; c; ~, u9 c, [        private void swarmSetp() {
' d* i% \: Z- `& \                list.addLast(new Agent(Id));; l" i1 E1 }: x5 K8 f
                Id++;
" ^- `2 E' e: \  Q7 t        }
$ ~' b1 W' b5 \; `  o
2 O+ O9 S, X) {  F        public Activity activateIn(Swarm context) {
0 P  _1 U/ V* y) ?                super.activateIn(context);
  D2 }# ~1 ]) c5 u% y4 S                schedule.activateIn(this);
1 j! ]2 W7 U* O  m                return getActivity();
. b$ p# J/ n. j* q! J' o        }" F, e" F0 s2 B
& E6 l' V2 s' v7 y( b: t" S
        public static void main(String[] args) {
4 M1 ?% o# b3 @3 ^( T4 J- I4 r1 U9 `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' s+ p5 o9 k- `" Z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);* A8 R6 s+ K# v+ M, Y
                swarms.buildObjects();
) I) h" e/ Z8 [# d- a. l! p                swarms.buildActions();
; |/ R  `1 D; r( [3 i% u* D( Y                swarms.activateIn(null).run();4 A) o% i% n9 w  G6 I
        }% ^9 f2 x; N+ m% X6 X

( v! f' }: u0 N; s+ U# i2 q6 b& i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-3 05:50 , Processed in 0.020085 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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