设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5698|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 }- u2 n, D% }7 a
* m8 H* M, ?& L0 F. m% d9 g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ ?  F; H5 }" O! c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: f7 u! h) b" ?9 X- A/ }. b# D- B
swarm.SignatureNotFoundException8 S+ b2 t) d! J2 n. k
        at swarm.Selector.<init>(Selector.java:76): k' `' h+ P2 f( P. d; C( p4 G
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( l2 ~+ c/ [4 P3 d" |        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 C  ^' e& V# q3 s! }( L; M! o

* J' }. m/ D" |' V- r
+ W+ l3 o0 A7 Aimport swarm.objectbase.SwarmImpl;0 s4 e8 N: k/ M/ {9 z7 }% O0 f
import swarm.objectbase.Swarm;, m8 m. V% \  }
import swarm.activity.ScheduleImpl;
# |9 ~. [7 d/ Z/ Y  w0 {import swarm.activity.Activity;* N7 R! w, e% F$ s; r) a
import swarm.activity.ActionGroupImpl;: ]( ]. G0 _( k- P) v- m3 `
import swarm.collections.ListImpl;
2 q: X  ~! k! Aimport swarm.defobj.Zone; # T9 M/ u  f5 D' O2 B8 ^
import swarm.Globals;& Y8 m7 }, U: Y, O
import swarm.Selector;
- r( d% U7 ]* M7 C. J( Simport swarm.activity.ActionGroup; # A3 c( m8 s+ [3 i6 _
class Agent {
% g0 C" u. F, A. E* t( \        char id;
/ f  y/ n5 m/ Y  X$ n+ _4 R2 I8 N% {4 _" u8 L
        Agent(char id) {
1 U( s8 j/ k$ z                this.id = id;+ Q4 K/ a0 S" S# ^
        }
* a* U5 H( F+ g5 T" \. S- ]1 z' a4 k1 J1 w1 J& ^- ~  _# @
        public void agentStep() {
0 a: x# l' U9 ]9 u/ m+ F9 Y! [. c                System.out.println(id + ":" + Globals.env.getCurrentTime());: n$ `; o& [. [5 G0 {2 |; V
        }% ]% b& r! C9 y" q
}
" c+ O1 X( m( Y* A# r2 z  _1 M  e+ b3 [- Y
public class ActionGroupDemo extends SwarmImpl {& E7 }. y6 Z9 I! ~* r9 l
        ScheduleImpl schedule;+ w8 H5 B6 `4 C; \3 N1 ^) {
        ActionGroupImpl actionGroup;
$ @" s# k  U5 O' G        ListImpl list;
$ _3 G( K, ]1 o0 r/ h( C        char Id = 'a';
2 `/ [* m3 @+ x( P% h
- E9 z1 f- |' X: K# H( l: u* Q        ActionGroupDemo(Zone aZone) {
6 {, O% a* U: M" b2 e. `8 g$ i                super(aZone);
1 B$ p- X. S2 x0 x& w% Y                list = new ListImpl(aZone);% W3 C, H  @% I! P2 T. k/ c3 |, C
                swarmSetp();
1 `; l& X- o, |5 A/ P                actionGroup = new ActionGroupImpl(aZone);
& ~" m/ ?! E6 C5 ]                schedule = new ScheduleImpl(aZone);9 l4 {# ^( N& t# o
                try {
2 L1 v0 _# ]" N1 b+ I                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) c4 ]. z5 t0 p# n( ~                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, W8 x8 q& d- J3 G
                        3 `( R5 Q& W' D( s
                        actionGroup.createActionForEach$message(list, agentSel);* \4 d4 _- i$ v* V1 E& d* U' B
                        actionGroup.createActionTo$message(this, swarmSel);  s/ Y$ l3 \' ~( U
                        schedule.at$createAction(0, actionGroup);
1 r% S% d3 d! }) {                        schedule.at$createAction(1, actionGroup);
, ^/ L; {! G4 L                        schedule.at$createAction(2, actionGroup);
  @4 J8 E- `2 i5 X2 i2 h  S0 [; t& M, w- P$ Y+ R
                } catch (Exception e) {
" e. u# ^0 O7 O7 c) {                        e.printStackTrace(System.err);# V7 F/ P, Y, [) i& d
                        //System.out.println(e);
9 t" F, ~8 c% ~                        System.exit(1);
7 s1 B2 A" n* [: P% v                }; S. T7 S4 U9 r& r/ N' W/ \

/ }+ P$ S4 T5 \% d. Z5 N+ @
* D" T& G& A, E( O2 `        }
4 ~5 v% X' }+ V+ q
# k+ e' Q6 i* T8 r        private void swarmSetp() {
2 ~8 d8 t+ [9 Y; q( y$ ?( \: D                list.addLast(new Agent(Id));& X, U3 c2 p+ C( {4 R8 O) Z) H" o
                Id++;8 A7 q. P% t5 w
        }
8 |$ C: H' M/ |6 e' N: f! t
; ^( R! I1 M. B        public Activity activateIn(Swarm context) {
* K5 K; n9 H& E                super.activateIn(context);& Q+ J- I5 U1 q( o
                schedule.activateIn(this);
: i  L) l: k% |                return getActivity();
: C# w  y3 `( Y2 C- M        }
& N  C0 z8 r+ x1 X$ ~- d0 H7 M' j) O3 z* J/ ?" [
        public static void main(String[] args) {
4 @5 e3 n! a- r" |* K2 [. z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, t% n7 H" {1 D2 X6 i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ i$ @  \& ]  n$ W" v1 t7 q2 Z* ^                swarms.buildObjects();
3 e- m/ E+ \& i8 X                swarms.buildActions();
, G+ }7 n, H- v0 c' A                swarms.activateIn(null).run();$ n: B  J! f, M+ r" r: i
        }
# F, L! P" j# c4 d6 ?* f. ^) A2 b( {9 Z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-19 18:43 , Processed in 0.014095 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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