设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13102|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' |6 `3 U  H& B+ f- v* q5 }" ]" y- c; @; j  |& O" W3 m; Y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% [- K! q# U6 n3 h5 N以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 u: a# h- V9 G
swarm.SignatureNotFoundException* \) ~: k1 D& v* z, _  l
        at swarm.Selector.<init>(Selector.java:76)
0 [; j: }2 a) r& r6 |0 X2 E4 I. o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)+ G; m& M. _3 C) _* H% {
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 ], }9 H, p5 s1 P

2 k" Z, q' m3 o% K6 y0 P/ |, R3 f' h6 ~; E0 M" K  Y5 G7 U; A
import swarm.objectbase.SwarmImpl;' s& e1 ^) h9 j* x
import swarm.objectbase.Swarm;
0 Y, ?2 J! {' o2 uimport swarm.activity.ScheduleImpl;1 B+ f  x) C3 b
import swarm.activity.Activity;
, c) X7 D- e; P: v! y$ \- q0 Mimport swarm.activity.ActionGroupImpl;
7 X: V3 n. i& @: \( ?; x- Qimport swarm.collections.ListImpl;
; k9 ?6 Y" W5 {( _  J2 W" P" gimport swarm.defobj.Zone;
9 ?+ K' _  A0 Iimport swarm.Globals;# x; ?' |" y0 e7 m! e, G
import swarm.Selector;
; R% C* A+ u0 o, U9 @! G2 Gimport swarm.activity.ActionGroup; % s- ^5 B/ d' H& ~0 X
class Agent {9 a: B( @; [( N; e3 a7 g
        char id;
6 y8 e) K8 i+ B$ h* z
4 Y# g, t( v. N2 J8 R5 B1 A6 ]7 b7 r+ s1 Z9 {        Agent(char id) {
6 T% }0 t% l3 c! ~( y9 k                this.id = id;$ G) [, V7 n4 d: i
        }
. R+ v$ ~/ `: p" o7 z
7 ?2 b, z5 D/ y7 B  @        public void agentStep() {
8 j$ B* h1 x& O$ F1 P* w: d0 T                System.out.println(id + ":" + Globals.env.getCurrentTime());
+ J1 Q6 L" T6 r# C! U& C        }
' {  U) s: L9 h8 Q7 g}1 P3 i: o: u1 Q& B" G- _  A2 e
3 d  f& j$ Z4 c5 I. U) s8 [, {
public class ActionGroupDemo extends SwarmImpl {
* W; V, ]. w* a4 ^1 v- X; X        ScheduleImpl schedule;
8 X0 P3 h) `6 v/ i1 s        ActionGroupImpl actionGroup;
4 [. u2 r) P/ r& Q1 i( Z" `        ListImpl list;
7 B2 X# c* d. A) x6 F, P% x$ Y        char Id = 'a';% `& I) I- V+ k: q$ B4 R: C

0 B8 f5 i. m$ F1 d3 z, x        ActionGroupDemo(Zone aZone) {0 v) }% O) s4 A3 X1 }7 W# l
                super(aZone);
2 x& X/ m5 A4 B0 S& A* S                list = new ListImpl(aZone);
+ d7 I. z% d4 U* N1 _( ^- a                swarmSetp();
" b9 e7 e7 N# e. K9 ^& r                actionGroup = new ActionGroupImpl(aZone);
3 N# k: D' z1 g$ i4 Z. A$ b7 Q                schedule = new ScheduleImpl(aZone);4 i( s$ |+ P7 c' u- I
                try {
' k! ^$ Y' I; ]+ p7 c5 }! x                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% E7 S$ J6 h. z- W% r" ^- q: R
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( q( {4 q7 Q5 |3 U1 u. y* f2 S
                        * V+ ~1 s* e/ t- v0 U: V" H5 ^9 X
                        actionGroup.createActionForEach$message(list, agentSel);
( g& O0 U0 r% Z                        actionGroup.createActionTo$message(this, swarmSel);
8 ?+ G2 \3 X- h% n  v* D2 D: t                        schedule.at$createAction(0, actionGroup);9 h- D7 L1 L% u9 B7 A( U
                        schedule.at$createAction(1, actionGroup);
& {( w9 D: x+ d% \2 P) a  ]* o                        schedule.at$createAction(2, actionGroup);+ M9 s+ U- @7 `2 J# _
5 D; ^# d) }% ]
                } catch (Exception e) {
' U. w8 P( D1 g& i. `; L                        e.printStackTrace(System.err);
- T# g3 N  c) B" ]                        //System.out.println(e);  P- x" E9 u) n  ^( T: K3 n& Q
                        System.exit(1);$ _+ ^( ]5 d2 S  X% y8 k7 W) N. K
                }
8 I2 }# g, ?, A: M  R5 U6 C& a
% P# F- P+ x" K$ r3 r0 e
' n1 F4 q/ D1 [7 b& k) a        }
5 m: d' L; h" b7 z- _1 n, _. h. s: Z7 A) R$ D  ?5 w5 K
        private void swarmSetp() {
, I5 X% {, p6 a9 w$ b                list.addLast(new Agent(Id));
+ Z5 q" N9 _! U8 }                Id++;$ P# n2 Q5 d7 \! m
        }& O: W2 o6 Z- c+ W
  c* ^5 X3 Z" N
        public Activity activateIn(Swarm context) {
0 X8 E; j# c, D. E) W                super.activateIn(context);
. K- e6 n- W- G+ b: {                schedule.activateIn(this);4 ]) f" p. q% C3 D0 j  C, @4 v. B
                return getActivity();1 S8 |8 z, J5 T. ?$ _0 N* P' A9 M
        }
( S2 i: T& P8 \/ k' W1 H9 y/ t5 l3 x2 t8 A" g
        public static void main(String[] args) {
4 @( [$ ~9 B9 s7 a9 y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# u- C4 z  L! e$ X- `                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! I6 l; c- K) [$ \' p                swarms.buildObjects();2 @5 S: I% \3 P, h  B
                swarms.buildActions();
" L6 S0 P. E. I5 g# M+ V                swarms.activateIn(null).run();. h3 [. J) }8 h' k; x' e" w. u
        }
* G3 f9 d5 z, p& w' j$ h* a- E5 e0 F8 w) v& O
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-28 09:56 , Processed in 0.023406 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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