设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11350|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 `- ?4 b# A9 ^  c. C% W

3 u5 a4 J6 R4 j" [0 t本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 u! \0 q9 e$ T0 L0 {; Y' A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 }+ V6 y. r7 K; s* F- r0 h& u2 d7 y9 M
swarm.SignatureNotFoundException
( p( j, n0 Y: J; B9 H9 U$ Q0 A        at swarm.Selector.<init>(Selector.java:76)2 M1 V, }8 b' O6 m; h
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: g7 P/ t4 s& O5 F' x4 X1 J4 n: Z* I        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ B% O) F2 x4 k& a  P! B8 \: P; X

( Y" O, D* E( A/ ^/ ?% t) @. @( f! c" u
import swarm.objectbase.SwarmImpl;
6 p" ]" T" l5 [3 Cimport swarm.objectbase.Swarm;
) p: e- N( X( e6 Q- z: uimport swarm.activity.ScheduleImpl;2 _1 d+ z% S; ~6 y- d
import swarm.activity.Activity;
: _6 Q5 W! h6 s, H6 K+ }5 `import swarm.activity.ActionGroupImpl;
7 a1 a- r1 F) E- N$ Y- n2 `5 {import swarm.collections.ListImpl;
: H1 E1 @* J( A! J  h) c2 _import swarm.defobj.Zone;
: v1 |( {5 y6 A2 i& g, A- iimport swarm.Globals;1 ]; V& i/ S* h+ O; u9 b
import swarm.Selector;; p' t2 q' o- `$ ]1 L3 H) z/ Q
import swarm.activity.ActionGroup; : K! U% d, |  ^' ?
class Agent {
7 N. N9 U! v) P7 f, v* t7 X3 l        char id;! b0 R# l4 V3 Y$ |0 Q

  p& k  ~. p3 L2 U) G2 F, Q        Agent(char id) {
7 S! v: B7 e! c( Z+ A5 i                this.id = id;( Z+ M1 y1 T7 Y9 Q9 g; q
        }
+ L* P5 B; E$ B, F
' B( H5 j8 C/ _/ f6 z        public void agentStep() {
0 ^' n% ~! E" x/ G3 o8 e                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 W) p  U0 J! a: T        }5 l* _: ]0 I5 S0 N3 }
}1 _: ~4 `( A+ |0 g! k
. T* A% Q0 _% m* F
public class ActionGroupDemo extends SwarmImpl {6 S- G- y6 F! d, J2 x  b, a1 ^
        ScheduleImpl schedule;4 z0 y$ e" C7 F: [2 S
        ActionGroupImpl actionGroup;) k1 ~1 z& y2 t0 |. O
        ListImpl list;
. z2 n/ t( k. d0 C: j, [        char Id = 'a';
: X" W, \& d6 }. o) `% r8 U6 }' |+ w0 \8 p6 K. O- C3 d
        ActionGroupDemo(Zone aZone) {
* o3 Q5 T! H" d3 Y2 T                super(aZone);
( h$ V6 W! }+ C  |1 t                list = new ListImpl(aZone);9 T/ H0 @, q# m8 X9 e. y
                swarmSetp();
" O% r3 a3 \7 w# b7 C                actionGroup = new ActionGroupImpl(aZone);
8 V/ Q" S; V' C! E% R                schedule = new ScheduleImpl(aZone);0 e* Z7 U* ]2 x1 V
                try {
& w! W' l  `2 _2 U: D& o                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! {% ~" h/ j: h& z( y+ d0 }                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 z; C' E( \) s; E" a& v8 u' C! d+ W                        
5 t9 i5 l. C- |1 a. o2 T, d                        actionGroup.createActionForEach$message(list, agentSel);
2 F, [" U5 b9 m' Z                        actionGroup.createActionTo$message(this, swarmSel);
( A+ ^' ]8 k, Q; Y1 \                        schedule.at$createAction(0, actionGroup);
0 U/ u# Z% K1 R( H5 F                        schedule.at$createAction(1, actionGroup);
  Q$ j% x0 _6 x& P" ^                        schedule.at$createAction(2, actionGroup);
/ z/ z" [, A$ `" a
' a5 b# g% j4 H2 l# [& I                } catch (Exception e) {5 Q; s/ R- d$ j  O- ^9 O9 {) O" j
                        e.printStackTrace(System.err);
, D# O0 c6 V* k  s; L! O8 D4 r                        //System.out.println(e);
, H. N- w, f) \7 X( T                        System.exit(1);
4 J0 t; F! H, ^- b* ?                }6 E. a3 R9 X9 I

# B" G+ {5 G- K( r. x0 h- H. j9 z, y- p: I/ C: r
        }
! o" Z5 w6 B/ e& @- G" ?6 R" [" Z8 N
        private void swarmSetp() {# d* _5 v% r( B. x* T3 C; T% x
                list.addLast(new Agent(Id));
6 D2 c: Z3 z* Z                Id++;
9 S1 p7 y2 e. M+ L7 ]7 s        }! n& \* K( ~. k7 C! \: F+ z

+ W$ I0 ^# y+ z1 p        public Activity activateIn(Swarm context) {
% M/ o, Z3 M+ |, U" t( Z; w                super.activateIn(context);/ G+ ^4 O  o5 d+ |" J) \
                schedule.activateIn(this);
% V3 V/ q; w! D" P                return getActivity();- Y8 Z& D& C% z* U3 n# Q% V' @3 ]; m
        }
0 n# v$ a0 j' x$ M; W& |* j! a. m/ Z1 v2 X% A. \1 f" v
        public static void main(String[] args) {
, x9 D0 ^! o! w. q+ _8 j1 u0 a  p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 i$ C& T. o4 }8 d5 h* ?: t4 x7 {7 C
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' b7 f: Y. m  j; ?: G$ ]* P( ^                swarms.buildObjects();
9 ^& Q: Y' ?3 P7 v: \1 |& h                swarms.buildActions();7 f( K) ?  o* u- V6 ~% L6 f
                swarms.activateIn(null).run();/ e( R, \" F/ p
        }/ L  o' I% O8 n% P7 Y0 m# Z6 }* R
7 e  c4 S  `' ?) h/ v2 r& W4 {
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-10 05:47 , Processed in 0.015504 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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