设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8969|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 }- l9 U: P$ _5 x: ~; W

7 A; q7 z0 {# p- o9 [( o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 i+ P3 J5 m7 U. b. Y- T以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! C, G1 a+ m& r5 [# b: }, E* k! b
swarm.SignatureNotFoundException) Q! s; K% q2 i5 D
        at swarm.Selector.<init>(Selector.java:76)
- H$ z7 \5 x/ e6 b4 Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 [! M; g4 Y4 F0 g+ j5 u; o( {
        at ActionGroupDemo.main(ActionGroupDemo.java:67)# U. s5 k" ^' |" X* h
4 n+ Q" a- ~7 B
3 E5 Z% _4 x; ?! g" g3 |/ a9 D
import swarm.objectbase.SwarmImpl;4 A$ u' n) W; W1 h- o& Z
import swarm.objectbase.Swarm;
1 P( s8 Z0 W. g+ J) @import swarm.activity.ScheduleImpl;
' D5 G; u( i! c0 D% G7 w+ C& oimport swarm.activity.Activity;
0 \9 @7 l4 i, s. _7 ?, N5 `* @import swarm.activity.ActionGroupImpl;- q% o2 `* E- W5 ^9 W" g. ]
import swarm.collections.ListImpl;
: E+ H) `- w/ X, q+ `) himport swarm.defobj.Zone;
- k' y, X+ F+ E( {import swarm.Globals;
! Y# A- T7 A8 E/ s' }import swarm.Selector;
5 ^  y# F$ t1 l% N: cimport swarm.activity.ActionGroup;
  c8 u8 ?; |# M' qclass Agent {) b& x. N: u& N! C
        char id;4 l( l& u4 i  e7 l( p9 P- B7 R
6 e+ S" E8 M% x7 }2 N0 _
        Agent(char id) {
0 z9 D; F- [# K$ W# w( @                this.id = id;
" N; W0 }, x) }/ q# i7 |4 c        }, R- N. W8 z9 X* [5 C7 j
( S) _4 L, A* \' |3 \* y
        public void agentStep() {. s  ?2 n# ?! z! H
                System.out.println(id + ":" + Globals.env.getCurrentTime());
: Y9 l3 n! B$ c        }7 q& g3 c( o2 y
}3 f4 k* r: l2 e9 R9 F- u

% ?9 O5 ^6 c4 b' spublic class ActionGroupDemo extends SwarmImpl {
! J: z9 c9 v* ?0 F        ScheduleImpl schedule;
1 c8 p: e6 k6 D' O* j: r        ActionGroupImpl actionGroup;/ c# ^7 n3 u" H: a
        ListImpl list;" b( T0 d% J5 q& S& B: i( |
        char Id = 'a';( F: X: T9 }! W( r) l! H

+ C( c5 I9 H- S, m4 o$ o        ActionGroupDemo(Zone aZone) {
: {8 C" d( S; U' Z  r+ y                super(aZone);
* t& h: ~2 Z0 m' {) o  s" Q                list = new ListImpl(aZone);" M' q  V3 S. H1 T# ~
                swarmSetp();
+ R) L, X6 B5 v                actionGroup = new ActionGroupImpl(aZone);
5 D" S4 ^; W: }. a, }                schedule = new ScheduleImpl(aZone);7 M) c5 x# p: f% g" _" Q
                try {, d  K; o& @5 b+ ?' Z, j5 c
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, O. S, }5 i6 a8 Y' N) q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 S) \: d& k( h1 L3 e! r" T                        
% D- X7 {( }! ?* T( C/ A) C# l                        actionGroup.createActionForEach$message(list, agentSel);! |) e# E7 @/ S! a' v
                        actionGroup.createActionTo$message(this, swarmSel);; a: D% T" h: L
                        schedule.at$createAction(0, actionGroup);% o8 |) l6 i/ \5 ]
                        schedule.at$createAction(1, actionGroup);
1 O* T! }% X" \; U7 F; R- W4 `! Z                        schedule.at$createAction(2, actionGroup);2 L3 ~6 \. g4 Q8 o

: m0 G# B0 L% |9 C                } catch (Exception e) {
5 k" N; C* E; R& W0 K: m% L                        e.printStackTrace(System.err);
) R+ Q9 C9 e. W: X8 a                        //System.out.println(e);4 q/ W1 W9 _  u! e) X) s
                        System.exit(1);6 `# e: q8 c' r5 \, u
                }
/ K& F- W. e; F4 J# }$ [) R/ ~# S
! Z  I+ r# C/ w' z- |$ z0 `2 o- F
        }
" C% p# o) H4 J) Z3 X, N
. _& F3 k( j' v3 F7 s        private void swarmSetp() {
1 t- \; Y$ K2 P' v7 F2 J9 u                list.addLast(new Agent(Id));+ [: r3 ^. A6 r3 w% n: P; E
                Id++;
0 U$ y, e: u$ P' U7 [: ~, H        }0 w; s. n+ j- g, z4 w& _
- Z& R* G! [0 m2 j9 d3 l
        public Activity activateIn(Swarm context) {$ l9 H" [! h5 U' l5 K. i1 X
                super.activateIn(context);
1 \, r; R5 h% I0 ~2 b                schedule.activateIn(this);
( \, c" ^( s$ |9 D& D* E* Y                return getActivity();- l' F6 o" B! W, D
        }% Q* s, t  N7 J9 o9 V( Z

. P8 ~; p8 R4 @# H# I+ s6 D        public static void main(String[] args) {2 `* E  L+ F8 r  T  D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 I! M$ z+ Z* p6 i) w+ c                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 q$ q! m7 L! J+ R/ H8 z
                swarms.buildObjects();
8 H  n, G  ~: Y, j9 a                swarms.buildActions();! z% ^  n2 ~2 Q0 A" S8 k* C
                swarms.activateIn(null).run();
0 Q$ h# i' B9 s7 c2 z        }; m' ^$ v# r8 q/ Q8 A$ m
  m" ]- I6 k0 Y# M2 }' M  M9 n
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-28 03:10 , Processed in 0.028815 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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