设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5986|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( f: ^7 p$ R0 @* y5 r/ A
- \. Z1 M/ ^5 Y$ [, |4 Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' G. {3 t% v: z: _3 B8 O! t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 g7 P# G3 ?$ m9 M, E$ Mswarm.SignatureNotFoundException
4 ]' @; h9 v* h        at swarm.Selector.<init>(Selector.java:76)6 p6 _8 Z" \# e6 A0 {& O8 k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, q% y8 @* K0 c5 u  @2 k        at ActionGroupDemo.main(ActionGroupDemo.java:67)
; o  d; Z$ ^& @- J/ l+ n' N4 |2 k% T4 ]# E8 u0 S! i5 X9 U
4 W/ x. u0 F5 ]2 ^) F8 _* `. h
import swarm.objectbase.SwarmImpl;% p0 ?3 u/ ~# I2 {2 N( D- P
import swarm.objectbase.Swarm;
/ J& M- I' @4 T! `" p/ ~import swarm.activity.ScheduleImpl;
+ E, n2 M  h/ N4 M6 l8 bimport swarm.activity.Activity;
1 ^6 P+ \& v8 b; ?3 {: rimport swarm.activity.ActionGroupImpl;5 x! u) a4 n. H: ], _2 w8 w$ ~
import swarm.collections.ListImpl;4 Y" ^- J% H6 B, }% A2 ]
import swarm.defobj.Zone;
  C9 Q! O* t! \import swarm.Globals;
! E5 Q* ]/ X' o( Y& A' M; mimport swarm.Selector;" ?5 s' [+ U5 @& C
import swarm.activity.ActionGroup;
3 V7 T+ J$ z8 F3 `8 ]0 j; Oclass Agent {8 @2 F& U7 P+ K0 l. l) e
        char id;) D, G; d" O5 Z. R
) h; k- B$ X5 H* A# }
        Agent(char id) {
- d& p  m& R! s& b                this.id = id;+ u% {) G0 `1 j0 u
        }
) d) f5 G1 _" i# s9 p; r# k  @" X0 V1 C" e
        public void agentStep() {
8 l6 K: h+ w& B" d& G                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 f9 t: ]3 V0 l9 ~        }( g6 q  H( }% D+ _+ U
}1 [$ O; e9 Z6 R& a2 Y! J" J  q5 [6 W
) Q9 i$ Z8 O/ o. k
public class ActionGroupDemo extends SwarmImpl {
1 ?0 I8 o: `) |  J9 b8 c4 C& d2 |5 z5 ]        ScheduleImpl schedule;0 O8 H4 W; c5 {8 z* i4 \( f
        ActionGroupImpl actionGroup;
0 u6 t4 J5 a3 I. n        ListImpl list;
+ y# {4 \0 G, }; D& g* s- Z+ P        char Id = 'a';$ E- B' H9 u, E# h$ Z

' J: X& w7 U* L  p+ ]        ActionGroupDemo(Zone aZone) {
4 z0 Z7 J% [* r0 u: _: s, A* V. t                super(aZone);" d, w$ S4 f5 f8 v+ q4 C
                list = new ListImpl(aZone);/ P  }6 J6 L/ q+ \- m
                swarmSetp();  Y( u9 H+ ]* e
                actionGroup = new ActionGroupImpl(aZone);
0 V4 K$ [1 N7 |" K0 p# [4 ^7 x! S                schedule = new ScheduleImpl(aZone);1 B* p' ^' ~9 x. _) @4 M/ }
                try {5 b/ n" ]: [. _7 Z, A2 d+ D- X
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! N2 `( K7 p6 b3 x( R                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 u. N  O* S) I                        
. h) B: h2 E8 X6 A+ t; r  r' F                        actionGroup.createActionForEach$message(list, agentSel);
; k3 `( ?- H( g$ l% [; r                        actionGroup.createActionTo$message(this, swarmSel);
: ~4 L4 j: X% R5 x" h' S7 ^( {                        schedule.at$createAction(0, actionGroup);
( a0 L' Y/ c* @, v1 ]                        schedule.at$createAction(1, actionGroup);
& r1 s: e# e' [0 _* M9 X                        schedule.at$createAction(2, actionGroup);; R. M5 V4 d$ v: p$ Q
5 k- ?; h5 ^0 _& t. e: A
                } catch (Exception e) {8 @+ i$ F" h, g1 k7 e3 @) u3 j3 k
                        e.printStackTrace(System.err);/ H1 x9 S3 K$ s6 f  j0 r1 c+ b) g, k
                        //System.out.println(e);
8 _" n4 L3 `; O0 ]                        System.exit(1);
7 ?* F& P8 @5 m3 O8 @: g% l) _                }. K- ~' k5 I* k! f3 a+ F
6 \) Z2 |4 e7 s% y9 b

4 y7 V+ W5 D4 H: K! L* |$ X  V        }
) I/ E2 V2 w3 l3 g/ ?. ]# F, `4 o7 W: e4 d5 h
        private void swarmSetp() {- q: ~1 }; j0 f" M
                list.addLast(new Agent(Id));9 R4 ]/ B, q. W  l+ M
                Id++;
% S6 m" p6 u9 j0 A- M        }
: Y* ~5 a1 f$ F! x+ U# I* P! _2 O& g1 u* o3 \) U
        public Activity activateIn(Swarm context) {) c+ E0 s7 k1 D5 X" G/ a- s" u8 Q% {
                super.activateIn(context);
; Y0 t2 I( D* h                schedule.activateIn(this);
' |2 P9 Y3 A9 k, X4 Z                return getActivity();
% d! m  F0 Q# u: Z        }  B' t) n$ Q) T+ c

) d  D$ T4 n+ x( T4 p, f+ y% ~1 f        public static void main(String[] args) {  f) ?5 O3 s1 L# R8 N
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 e! E) H, c+ H/ K8 K9 v% `: q) |" h
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* T4 m8 J+ X! v& z                swarms.buildObjects();
' N! A" @1 V. b- J                swarms.buildActions();2 J$ n, `4 J; F& \
                swarms.activateIn(null).run();
/ [& A9 g1 N; i6 K- o        }- V, C: o  |% K- F3 U# f0 \' \

9 U0 @+ e" K' I" @}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-13 06:25 , Processed in 0.020164 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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