设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9198|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 v' Y* `6 K1 d
$ d, |! J" g0 ~3 T( B本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 W( O# W9 N3 a" y4 @2 W8 v
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ D2 v2 }* n# L1 ?4 }$ C+ n
swarm.SignatureNotFoundException
- |3 c: H) x/ @        at swarm.Selector.<init>(Selector.java:76)
4 p" u3 j7 _$ [( U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ Z) w) \; V9 u) f* M" H$ f
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% ^2 R  j2 C: s# D
6 W, R: \( U/ r3 S7 s, _9 l
3 W- z* K1 X) M' ?* p6 I1 }7 q$ I! b; Mimport swarm.objectbase.SwarmImpl;
" W4 n1 B8 R( g' Z. Limport swarm.objectbase.Swarm;
& ^5 ]5 q- O- }; {% {$ D. y6 Bimport swarm.activity.ScheduleImpl;# g* B8 Q" T" s7 G2 |
import swarm.activity.Activity;* q* k6 @7 J# I; H7 U. Z8 b, z0 r
import swarm.activity.ActionGroupImpl;$ |7 q5 G# D2 [; ~
import swarm.collections.ListImpl;
2 |1 _, g6 O( q4 E! |1 L# A5 h/ t; qimport swarm.defobj.Zone;
. p5 t% p7 L* {5 e; himport swarm.Globals;( h9 h$ P# b6 j8 b
import swarm.Selector;
: n$ e! {& W, J0 t+ Eimport swarm.activity.ActionGroup; + z- ^" X; [5 U! i
class Agent {# v; x' R5 d2 R0 N5 X; B
        char id;8 U. j0 R8 |& B# L) K

( d$ p9 a7 B. x1 T# K        Agent(char id) {
, |6 t4 q8 x) `. D& T: ?4 J6 Z( c# N                this.id = id;
' g. ~+ g( e5 c, m, K2 X        }  c! c+ l5 h$ G9 x

+ n9 I5 P4 {- W        public void agentStep() {, u7 [7 q2 b/ ^7 ?# E( e' Y1 s
                System.out.println(id + ":" + Globals.env.getCurrentTime());) e+ @: _. P! }; U% E
        }
% `$ m: B) U/ \9 p; F( C' m5 _& p}
! b2 N4 T7 c  Y' L2 x& a) L+ ~* M( {/ V2 }8 B$ W) P, a
public class ActionGroupDemo extends SwarmImpl {
* |8 C& J! x1 V2 R$ t        ScheduleImpl schedule;
3 R0 B* b* z% P- `4 n& C  ^. b        ActionGroupImpl actionGroup;
, |6 c0 n5 W& R) w8 m        ListImpl list;9 u0 i' |  A/ x; @/ D
        char Id = 'a';
8 D* g: X: m: v  g" m. U  ^/ M* D( t; ?- d
        ActionGroupDemo(Zone aZone) {
- h8 ^/ y. c% P: h+ B% p                super(aZone);
5 G" H5 V- l; {' Y                list = new ListImpl(aZone);
& ^, W( P$ S& c' }. Z1 q                swarmSetp();
0 [& q: y2 N" w- z. d                actionGroup = new ActionGroupImpl(aZone);
' X) h8 U+ R8 z% A0 [! x                schedule = new ScheduleImpl(aZone);
) d, e4 y, F& w8 `; B/ A                try {
0 y/ M8 c* Q; h5 @' ^/ R                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" _* s% W8 T. ^$ X. ]1 N4 m8 _                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, |" A. \3 M  ?2 E                        
5 d+ D: U* B% l5 H* f                        actionGroup.createActionForEach$message(list, agentSel);% K8 r8 J" Q  i9 Y8 b
                        actionGroup.createActionTo$message(this, swarmSel);
  u5 `$ J+ E0 X3 z/ R) v                        schedule.at$createAction(0, actionGroup);0 ]2 i  p3 Z' U: p, s3 R, A
                        schedule.at$createAction(1, actionGroup);
2 C% F6 U( A5 ?                        schedule.at$createAction(2, actionGroup);
6 s; \* s4 m3 N% M1 L5 y! _6 S
) L2 t$ g  H/ X$ w$ Y( }                } catch (Exception e) {
, {  c) S+ C. s( d, ?                        e.printStackTrace(System.err);/ j1 J2 u) @: S, Q+ ~: ]9 C! }
                        //System.out.println(e);: G2 U( G5 Q- d" [
                        System.exit(1);, D4 Q. `/ \) F* T9 g' i& E
                }6 x( K$ q- r3 W- M& J9 a& X

( x3 O( ?3 C# D4 z9 J: u. p2 h* }) r6 q) Y5 R" x* _( l3 i9 d
        }0 A5 d3 d) U' U8 |# _& r. r* F

( W8 O4 {% i2 X        private void swarmSetp() {
* n4 V% F6 R2 s/ n                list.addLast(new Agent(Id));, F8 p9 u0 o+ A7 G' \1 U6 R
                Id++;3 @7 o. v+ n0 \" D
        }- `/ x/ l  g/ o: t' h3 N) N+ h: \

9 P0 P1 B0 M( [3 ?( b, o        public Activity activateIn(Swarm context) {
+ i1 J" c9 r" ^. L+ m1 Z                super.activateIn(context);/ o5 i- i$ f. N
                schedule.activateIn(this);
/ b3 r" `* S) i1 \9 J                return getActivity();
9 S& S3 f# D& Q* h$ q; {) |        }
5 Q& D" X2 @' u
& i# Z$ f. a* |% V# |$ J! A0 V/ A        public static void main(String[] args) {
3 g" X' e% j, G) _) f. _+ M, T3 z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 w) \, c4 N7 J0 l
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' s; O& G4 Y% U8 B
                swarms.buildObjects();2 Z! d; _/ w# C6 M* }* V
                swarms.buildActions();
8 h* l  O7 ^0 {2 L0 X3 e4 n0 @2 @                swarms.activateIn(null).run();
2 @/ v3 u! P! O0 \; V/ d9 z        }# w, z" d9 [/ K. s+ B
! A; U& A2 a+ V
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-4 05:43 , Processed in 0.016060 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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